package com.zhiwei.msf.common.util;

import lombok.SneakyThrows;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * function 日期工具类
 * author zhiwei.yang
 * time 2020-3-4-14:58
 */
public final class DateUtil {

    public static String YYYY_MM_SS_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";

    private DateUtil() {
    }

    /**
     * 日期格式化
     *
     * @param timestamp 时间戳
     * @return
     */
    public static Date parseDate(long timestamp) {
        return parseDate(timestamp, YYYY_MM_SS_HH_MM_SS);
    }

    /**
     * 日期格式化
     *
     * @param timestamp 时间戳
     * @param format    日期格式
     * @return
     */
    @SneakyThrows
    public static Date parseDate(long timestamp, String format) {
        Date date = new Date(timestamp);
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);
        return simpleDateFormat.parse(simpleDateFormat.format(date));
    }

    /**
     * 日期格式化
     *
     * @param date   时间戳
     * @param format 日期格式
     * @return
     */
    @SneakyThrows
    public static String formatDate(Date date, String format) {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format);
        return simpleDateFormat.format(date);
    }
}